Tower Top Daily Average
library(tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.5 v purrr 0.3.4
## v tibble 3.1.5 v dplyr 1.0.7
## v tidyr 1.1.4 v stringr 1.4.0
## v readr 2.1.0 v forcats 0.5.1
## Warning: package 'readr' was built under R version 4.1.2
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
top <- read.csv('Tower Top RH.csv')
#top$Temperature <- ((top$Temp - 32)*5)/9
# top <- separate(top, Time, into = c('hours','minutes'))
# top$hours <- as.numeric(top$hours)
# top <- na.omit(top)
#
# for (i in 1:nrow(top)) {
# if (top$minutes[i] == 30) {
# top$hours[i] <- top$hours[i] + 0.5
# }
# }
top <- top %>% group_by(Date, hours)
top$Place <- "Top"
boxplot(Temp ~ hours, data = top, col = "salmon", main = "Boxplots of Tower Top Temperatures", xlab = "Hours from Midnight", ylab = "Temperature in Celcius")

Tower Middle Daily Average
middle <- read.csv('Tower Middle RH.csv')
# middle <- separate(middle, Time, into = c('hours','minutes'))
# middle$hours <- as.numeric(middle$hours)
# middle$Temperature <- ((middle$Temp - 32)*5)/9
#
# for (i in 1:nrow(middle)) {
# if (middle$minutes[i] == 30) {
# middle$hours[i] <- middle$hours[i] + 0.5
# }
# }
middle <- middle %>% group_by(dates, hours)
middle$Place <- "Middle2"
boxplot(Temp ~ hours, data = middle, col = "green", main = "Boxplots of Tower Middle Temperatures", xlab = "Hours from Midnight", ylab = "Temperature in Celcius")

Tower Top + Tower Middle Comparison
library(plotly)
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
mis <- middle %>% arrange(dates, hours)
mis$Place <- "Middle"
# for (i in 1:nrow(mis)) {
# if (mis$minutes[i] == 45) {
# mis$hours[i] <- mis$hours[i] + 0.5
# }
# }
mis2 <- mis %>% distinct(dates, hours, .keep_all = T) %>% group_by(hours) %>% mutate(Temperature = mean(Temp, na.rm = T)) %>% slice(1)
mis2$minutes <- as.numeric(mis2$minutes)
mis3 <- top %>% arrange(Date, hours)
mis3$Place <- "Top"
# for (i in 1:nrow(mis3)) {
# if (mis3$minutes[i] == 45) {
# mis3$hours[i] <- mis3$hours[i] + 0.5
# }
# }
mis4 <- mis3 %>% distinct(Date, hours, .keep_all = T) %>% group_by(hours) %>% mutate(Temperature = mean(Temp, na.rm = T)) %>% slice(1)
mis4$Place <- "Top"
mis4$minutes <- as.numeric(mis4$minutes)
topmiddle <- rbind(mis2, mis4)
topmiddle$hours <- as.numeric(topmiddle$hours)
plot1 <- ggplot(topmiddle, aes(hours, Temperature, color = Place)) + geom_smooth(aes(x = hours, y = Temperature), method = "lm",
formula = y ~ poly(x, 23), se = FALSE) + geom_errorbar(alpha = 0.3, aes(ymin = Temperature - sd(Temperature, na.rm = T), ymax = Temperature + sd(Temperature, na.rm = T), width = 0.2))
plot1
## Warning: Removed 1 rows containing non-finite values (stat_smooth).

Tower Base Daily Average
base <- read.csv('Tower Base RH.csv')
# base$Temperature <- ((base$Temp - 32)*5)/9
# base <- separate(base, Time, into = c('hours','minutes'))
# base$hours <- as.numeric(base$hours)
# base <- na.omit(base)
#
# for (i in 1:nrow(base)) {
# if (base$minutes[i] == 30) {
# base$hours[i] <- base$hours[i] + 0.5
# }
# }
base2 <- base %>% group_by(Date, hours)
base2$Place <- "Base2"
boxplot(Temp ~ hours, data = base2, col = "salmon", main= "Boxplots of Tower Base Temperatures", xlab = "Hours from Midnight", ylab = "Temperature in Celcius")

Plots of Tower
mis <- middle %>% arrange(dates, hours)
mis$Place <- "Middle"
mis$minutes <- as.numeric(mis$minutes)
mis$hours <- as.numeric(mis$hours)
# for (i in 1:nrow(mis)) {
# if (mis$minutes[i] == 45) {
# mis$hours[i] <- mis$hours[i] + 0.5
# }
# }
mis2 <- mis %>% distinct(dates, hours, .keep_all = T) %>% group_by(hours) %>% mutate(Temp = mean(Temp, na.rm = T)) %>% slice(1)
mis3 <- top %>% arrange(Date, hours)
mis3$Place <- "Top"
mis3$minutes <- as.numeric(mis3$minutes)
mis3$hours <- as.numeric(mis3$hours)
# for (i in 1:nrow(mis3)) {
# if (mis3$minutes[i] == 45) {
# mis3$hours[i] <- mis3$hours[i] + 0.5
# }
# }
mis4 <- mis3 %>% distinct(Date, hours, .keep_all = T) %>% group_by(hours) %>% mutate(Temp = mean(Temp, na.rm = T)) %>% slice(1)
mis4$Place <- "Top"
mis5 <- base %>% arrange(Date, hours)
mis5$Place <- "Base"
mis5$minutes <- as.numeric(mis5$minutes)
mis5$hours <- as.numeric(mis5$hours)
# for (i in 1:nrow(mis5)) {
# if (mis5$minutes[i] == 45) {
# mis5$hours[i] <- mis5$hours[i] + 0.5
# }
# }
mis6 <- mis5 %>% distinct(Date, hours, .keep_all = T) %>% group_by(hours) %>% mutate(Temp = mean(Temp, na.rm = T)) %>% slice(1)
mis6$Place <- "Base"
topmiddle <- rbind(mis2, mis6, mis4)
topmiddle$hours <- as.numeric(topmiddle$hours)
ggplot(topmiddle, aes(hours, Temp, color = Place)) + geom_smooth(aes(x = hours, y = Temp), method = "lm", formula = y ~ poly(x, 23), se = FALSE) + geom_errorbar(alpha = 0.2, aes(ymin = Temp - sd(Temp, na.rm = T), ymax = Temp + sd(Temp, na.rm = T), width = 0.2)) + geom_rect(aes(xmin = 5.75, xmax = 6.25, ymin = 20, ymax = 30),
fill = "transparent", color = "black", size = 0.5, linetype = 2) + ggtitle("Plots of Tower")
## Warning: Removed 2 rows containing non-finite values (stat_smooth).

ggplotly(plot1)
## Warning: Removed 1 rows containing non-finite values (stat_smooth).
library(tidyverse)
MP150 <- read.csv("MP150 RH.csv")
Lago475 <- read.csv("Lago 475 RH.csv")
MP150 Plot Daily Average
MP150 <- read.csv("MP150 RH.csv")
# MP150 <- separate(MP150, Date...Time, into = c("dates", "Time"), sep = " ")
# MP150$dates <- as.Date(MP150$dates, "%m/%d/%Y")
# MP150 <- separate(MP150, Time, into = c('hours','minutes'))
# MP150$hours <- as.numeric(MP150$hours)
#
# for (i in 1:nrow(MP150)) {
# if (MP150$minutes[i] == 30) {
# MP150$hours[i] <- MP150$hours[i] + 0.5
# }
# }
MP150 <- MP150 %>% group_by(dates, hours)
boxplot(Temperature ~ hours, data = MP150, col = "salmon", main= "Boxplots of MP150 Temperatures", xlab = "Hours from Midnight", ylab = "Temperature in Celcius")

Lago 475 Plot Daily Average
Lago475 <- read.csv("Lago 475 RH.csv")
#Lago475$Temperature <- ((Lago475$Temperature - 32)*5)/9
# Lago475 <- separate(Lago475, Date...Time, into = c("dates", "Time"), sep = " ")
# Lago475$dates <- as.Date(Lago475$dates, "%m/%d/%Y")
# Lago475 <- separate(Lago475, Time, into = c('hours','minutes'))
#
# Lago475$hours <- as.numeric(Lago475$hours)
#
# for (i in 1:nrow(Lago475)) {
# if (Lago475$minutes[i] == 30) {
# Lago475$hours[i] <- Lago475$hours[i] + 0.5
# }
# }
Lago2 <- Lago475 %>% group_by(dates, hours)
boxplot(Temperature ~ hours, data = Lago2, col = "salmon", main= "Boxplots of Lago Temperatures", xlab = "Hours from Midnight", ylab = "Temperature in Celcius")

Parahuaco Plot Daily Average
Parahuaco <- read.csv("Parahuaco RH.csv")
# Parahuaco <- separate(Parahuaco, Date...Time, into = c("dates", "Time"), sep = " ")
# Parahuaco$dates <- as.Date(Parahuaco$dates, "%m/%d/%Y")
# Parahuaco <- separate(Parahuaco, Time, into = c('hours','minutes'))
# Parahuaco$hours <- as.numeric(Parahuaco$hours)
#
# for (i in 1:nrow(Parahuaco)) {
# if (Parahuaco$minutes[i] == 30) {
# Parahuaco$hours[i] <- Parahuaco$hours[i] + 0.5
# }
# }
boxplot(Temperature ~ hours, data = Parahuaco, col = "salmon", main= "Boxplots of Parahuaco Temperatures", xlab = "Hours from Midnight", ylab = "Temperature in Celcius")

GP Plot Daily Average
GP <- read.csv("GP RH.csv")
# GP <- GP[,-1]
# GP <- separate(GP, Date...Time, into = c("dates", "Time"), sep = " ")
# GP$dates <- as.Date(GP$dates, "%m/%d/%Y")
# GP <- separate(GP, Time, into = c('hours','minutes'))
# GP$hours <- as.numeric(GP$hours)
#
# for (i in 1:nrow(GP)) {
# if (GP$minutes[i] == 30) {
# GP$hours[i] <- GP$hours[i] + 0.5
# }
# }
GP2 <- GP %>% group_by(dates, hours)
boxplot(Temperature ~ hours, data = GP, col = "salmon", main= "Boxplots of GP Temperatures", xlab = "Hours from Midnight (2019-07-26)", ylab = "Temperature in Celcius")

Murcielago (Rest) Daily Average
Murcielago <- read.csv("Murcielago RH.csv")
# Murcialago <- separate(Murcialago, Date...Time, into = c("dates", "Time"), sep = " ")
# Murcialago$dates <- as.Date(Murcialago$dates, "%m/%d/%Y")
# Murcialago <- separate(Murcialago, Time, into = c('hours','minutes'))
# Murcialago$hours <- as.numeric(Murcialago$hours)
#
# for (i in 1:nrow(Murcialago)) {
# if (Murcialago$minutes[i] == 30) {
# Murcialago$hours[i] <- Murcialago$hours[i] + 0.5
# }
# }
#
Murcielago <- Murcielago %>% group_by(dates, hours)
boxplot(Temperature ~ hours, data = Murcielago, col = "salmon", main= "Boxplots of Murcialago Temperatures", xlab = "Hours from Midnight", ylab = "Temperature in Celcius")

Parahuaco (Rest) Daily Average
Parahuaco <- read.csv("Parahuaco RH.csv")
# Parahuaco <- separate(Parahuaco, Date...Time, into = c("dates", "Time"), sep = " ")
# Parahuaco$dates <- as.Date(Parahuaco$dates, "%m/%d/%Y")
# Parahuaco <- separate(Parahuaco, Time, into = c('hours','minutes'))
# Parahuaco$hours <- as.numeric(Parahuaco$hours)
#
# for (i in 1:nrow(Parahuaco)) {
# if (Parahuaco$minutes[i] == 30) {
# Parahuaco$hours[i] <- Parahuaco$hours[i] + 0.5
# }
# }
Parahuaco <- Parahuaco %>% group_by(dates, hours)
boxplot(Temperature ~ hours, data = Parahuaco, col = "salmon", main= "Boxplots of Parahuaco Temperatures", xlab = "Hours from Midnight", ylab = "Temperature in Celcius")

Danta (Rest) Daily Average
dataset <- read.csv("Danta Region RH.csv")
dataset <- dataset[,-1]
# colnames(dataset) <- c("Number", "Date...Time", "Temperature", "Humidity")
#
# Danta <- separate(dataset, Date...Time, into = c("dates", "Time"), sep = " ")
# Danta$dates <- as.Date(Danta$dates, "%m/%d/%Y")
# Danta <- separate(Danta, Time, into = c('hours','minutes'))
# Danta$hours <- as.numeric(Danta$hours)
#
# for (i in 1:nrow(Danta)) {
# if (Danta$minutes[i] == 30) {
# Danta$hours[i] <- Danta$hours[i] + 0.5
# }
# }
dataset <- dataset %>% group_by(dates, hours)
boxplot(Temperature..F. ~ hours, data = dataset, col = "salmon", main= "Boxplots of Danta Temperatures", xlab = "Hours from Midnight", ylab = "Temperature in Celcius")

Comparison of Tower top middle bottom Temperatures
top <- read.csv('Tower Top RH.csv')
# top$Temp <- ((top$Temp - 32)*5)/9
# top <- separate(top, Time, into = c('hours','minutes'))
# top$hours <- as.numeric(top$hours)
# top <- na.omit(top)
middle <- read.csv('Tower Middle RH.csv')
# middle <- separate(middle, Time, into = c('hours','minutes'))
# middle$hours <- as.numeric(middle$hours)
# middle$Temp <- ((middle$Temp - 32)*5)/9
# for (i in 1:nrow(top)) {
# if (top$minutes[i] == 30| top$minutes[i]==45) {
# top$hours[i] <- top$hours[i] + 0.5
# }
# }
# for (i in 1:nrow(middle)) {
# if (middle$minutes[i] == 30| middle$minutes[i]==45) {
# middle$hours[i] <- middle$hours[i] + 0.5
# }
# }
base <- read.csv('Tower Base RH.csv')
# base$Temp <- ((base$Temp - 32)*5)/9
# base <- separate(base, Time, into = c('hours','minutes'))
# base$hours <- as.numeric(base$hours)
# base <- na.omit(base)
# for (i in 1:nrow(base)) {
# if (base$minutes[i] == 30 | base$minutes[i]==45) {
# base$hours[i] <- base$hours[i] + 0.5
# }
# }
base2 <- base %>% group_by(hours) %>% summarize(Temperature = mean(Temp, na.rm = T))
base2$Location <- "Base"
base2$Activity <- "Tower"
top2 <- top %>% group_by(hours) %>% summarize(Temperature = mean(Temp, na.rm = T))
middle2 <- middle %>% group_by(hours) %>% summarize(Temperature = mean(Temp, na.rm = T))
top2$Location <- "Top"
top2$Activity <- "Tower"
middle2$Location <- "Middle"
middle2$Activity <- "Tower"
tmb <- rbind(top2, middle2, base2)
ggplot(tmb, aes(hours, Temperature)) +
geom_point(aes(color = Location)) + geom_line(aes(color = Location)) + labs(title = "Comparison of Tower Top Middle Bottom Temperature")
## Warning: Removed 2 rows containing missing values (geom_point).
## Warning: Removed 2 row(s) containing missing values (geom_path).

Plot of all Sites
library(plotly)
Lago22 <- Lago475 %>% group_by(hours) %>% summarise(Temperature = mean(Temperature, na.rm = T)) %>% mutate(Location = "Lago", Activity = "Foraging")
Danta22 <- dataset %>% group_by(hours) %>% summarise(Temperature = mean(Temperature..F., na.rm = T)) %>% mutate(Location = "Danta", Activity = "Rest")
MP15022 <- MP150 %>% group_by(hours) %>% summarise(Temperature = mean(Temperature, na.rm = T)) %>% mutate(Location = "MP150", Activity = "Foraging")
Parahuaco22 <- Parahuaco %>% group_by(hours) %>% summarise(Temperature = mean(Temperature, na.rm = T)) %>% mutate(Location = "Parahuaco", Activity = "Foraging/Rest")
Murcielago22 <- Murcielago %>% group_by(hours) %>% summarise(Temperature = mean(Temperature, na.rm = T)) %>% mutate(Location = "Murcialago", Activity = "Rest")
GP22 <- GP %>% group_by(hours) %>% summarise(Temperature = mean(Temperature, na.rm = T)) %>% mutate(Location = "GP", Activity = "Foraging")
AllSites <- rbind(top2, middle2, base2, Danta22, MP15022, Parahuaco22, Murcielago22, GP22, Lago22)
allplots <- ggplot(AllSites, aes(hours, Temperature, color = Location)) + geom_line(size = 0.3)
ggplotly(allplots)
Plot of all Location
Activity <- AllSites %>% group_by(Activity, hours) %>% summarise(Temperature) %>% slice(1)
## `summarise()` has grouped output by 'Activity', 'hours'. You can override using the `.groups` argument.
allplots <- ggplot(Activity, aes(hours, Temperature, color = Activity)) + geom_line()
ggplotly(allplots)